Systems and methods to improve skip forward functionality

ABSTRACT

Systems and methods are described to identify jump points indicative of potential time points from which to resume consumption of the media asset in response to receiving a request to skip a portion of a media asset being consumed. The jump points include a first jump point identified based on a content viewing profile and a second jump point identified based on a scene information associated with the media asset. A preview image is displayed at each of the identified jump points. Systems and methods are also described to pause the skipping operation at the identified jump points and provide a preview at the respective jump points. Systems and method are further described to identify jump points based on analysis of the portion of the media asset being skipped.

BACKGROUND

The present disclosure relates to media play systems and methods, andmore particularly, to systems and methods related to media playoperations.

SUMMARY

Audio and video media devices, such as dedicated recorders, televisions,and more recently, handheld devices (e.g., smartphones and tablets)offer their users the flexibility to perform various media contentmanipulation options such as being able to fast forward or rewindthrough content. Conventionally, users can use an adjustable skip timefeature, such as an adjustable skip button, to manipulate throughcontent. Consider a media player with a conventional time lapse or skipbutton feature(s) that enables a user to skip (forward or backward)through a video or audio recording by seconds and/or minutes.

Currently, a source of user frustration is burdensome skip featureactivation to navigate a media content backward or forward. In somecases, the user is required to repeatedly depress, tap, or press on askip button before reaching an intended media content destination (adesired play position)—an interesting portion of the media content, forexample, the end of a previously consumed media content episode or anend of a current scene. One source of user frustration stems from theuser not knowing where the portions of the media content that would beof interest to the user begin. Therefore, users are often forced toaimlessly skip forward and/or backward until they chance upon a desiredportion of the media asset.

In some devices, a skip (time) option is displayed on a screen displayof a corresponding media device (e.g., laptop) as an overlay on themedia content (e.g., video), iconically appearing with an encircleddouble arrowhead pointers. Typically, two skip buttons, one on eitherside of the play button, allowed the user to skip a media contentforward or backward by a fixed time period. For instance, a one-timeskip button touch on the left side of the play button skips the mediacontent backward by a standard 5 seconds or 10 seconds, and on-time skipbutton touch on the right side of the play button skips the mediacontent forward by a standard 5 or 10 seconds. If the user desires toskip through a non-standard short media content duration to reach thedesired play position, such as 2 seconds, the skip buttons provefrustrating because they are restrained by a 5-second or 10-second fixedgranularity.

Lack of adequate skip time granularity can further contribute to adverseuser experience when navigating relatively longer media content. Forexample, if the user wishes to skip ahead by 20 minutes using a10-second pre-configured skip button, the user must touch the skipbutton an impractical 120 number of times (120 min=20 min×60 secs/10)before reaching the intended play position, a cumbersome experienceindeed. User frustration also stems, at least in part, from the lack ofproportionality between the current play position (e.g., in an episodeof Game of Thrones) and the total media content play time (e.g., theentire length of an episode of Game of Thrones). In other words, theskip time amount granularity remains constant without regard to mediacontent duration. A 2-second skip time feature may not be ideal for a1-hour (total) audio and/or video duration, where the user wishes toreach a desired portion of the media asset towards the end of the videoduration. Similarly, a 5-minute skip time feature may not ideal when theuser only wishes to skip to the end of the scene currently beingdisplayed.

In summary, whereas media content consumers are sure to enjoy theexperience of navigating to a desired media content play destinationwith speed, accuracy, flexibility and ease, they are instead met withinconvenient media operations features, such as multiple button or tabclicks and seekbar slides with compromised speeds and accuracy.

Media content manipulation mechanisms, techniques, and systems areintroduced to facilitate convenient, rapid, and precise media contentskip time outcomes of media device content. As used herein, the term“media device” is synonymous with “media content equipment.”

In some disclosure systems, potential desired play positions (forexample, in an episode of Game of Thrones) in the media content (Game ofThrones Series) are identified. The potential desired play position(i.e., jump points) are places in the media content from which the userdesires to start to consume or resume consuming the media content.Continuing with the Game of Thrones example, a user may wish to skippast portions of the episode featuring a particular location such asDome. In an example application, a number of jump points are identifiedstarting from a play position after the scenes based in Dome end. Thejump points may be identified based on a content viewing profile (forexample, if members of the household always skip past the scenesfeaturing Dome and resumes consuming the episode when the location movesto Kings Landing, a jump point is identified at the play position wherethe episode begins featuring Kings Landing). The jump points may also beidentified based on a scene information (for example, if the user alwaysskips past the scenes featuring Dome, a jump point is identified at theplay position where the scenes featuring Dome ends). A progress barindicating the plurality of identified jump points is displayed to makeit easy for the user to navigate to a desired play position.

In some embodiments, potential desired play positions in the mediacontent are identified based on a characteristic associated with theportion of the media asset being skipped. Continuing the with the Gameof Thrones example, the system analyzes the characteristics associatedwith a scene being displayed at the current play position. In aninstance, the system may identify characteristics such as locationinformation (for example, Dome, Winterfell, etc.) actor information (forexample, Kit Harrington, Sophie Turner, etc.) or genre information (forexample, song, violence, nudity, etc.). If the user performs a skipforward operation every time the episode features violence, theidentified jump points begin at a frame position where the scenesfeaturing violence ends.

In an additional embodiment, the system analyzes the potential desiredplay positions based on a requested rate of skip (forward or backward)operation. For example, if the user skips forward using the 2-secondskip feature, the system identifies jump points in the immediatevicinity of the current play position (e.g., within 10 minutes of thecurrent play position). On the other hand, if the user skips forwardusing the 5-minute skip feature, the system identifies jump pointstowards the latter part of the media content duration (e.g., beginningat a position 20 minutes after the current play position).

In one embodiment, the skip (forward or backward) operations are pausedat potential desired play positions in the media content when the userdesires to skip through a non-standard short media content duration toreach the desired play position. For example, if the user touches skipbutton on the right side of the play button to skip the media contentforward by a standard 2 minutes or 4 minutes, when the desired playpositions (for example, scenes featuring the location Kings Landing)begins at a play position 5 minutes away from the current play position,conventional systems may skip past the desired play position and requirethe user to skip backward. In contrast, the systems and techniquesdisclosed here pause at jump points (identified based on user profileand/or scene information). This allows the user to select the identifiedjump point and resume consuming the media content at the desired playposition without requiring multiple skip operations.

In some embodiments, a preview image and/or audio clip is displayed ateach of the identified jump points to allow the user to easily identifyand navigate to the desired play positions. When the user selects one ofthe displayed preview images and/or audio clips, the media contentresumes display from the selected position.

In some embodiments, the jump points identified based on a contentviewing profile (e.g., based on viewing behavior of members in ahousehold) are visually distinguished from jump points based on sceneinformation. For example, jump points identified based on the contentviewing profile associated with the user making the request may behighlighted in green while jump points identified based on sceneinformation may be highlighted in red, in accordance with disclosedmethods and embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects and advantages of the disclosure will beapparent upon consideration of the following detailed description, takenin conjunction with the accompanying drawings, in which:

FIG. 1 illustrates an example media content skip operation screendisplay, in accordance with disclosed methods and systems;

FIGS. 2A and 2B illustrate another example media content skip operationscreen display, in accordance with disclosed methods and systems;

FIG. 3 illustrates another example media content skip operation screendisplay, in accordance with disclosed methods and systems;

FIG. 4 depicts an illustrative flowchart of a jump point identificationprocess, in accordance with disclosed methods and embodiments;

FIG. 5 depicts another illustrative flowchart of a jump pointidentification process, in accordance with disclosed methods andembodiments;

FIG. 6 depicts an illustrative flowchart of navigating to a desired playposition, in accordance with disclosed methods and embodiments;

FIG. 7 depicts an illustrative flowchart of identifying jump pointsbased on scene information, in accordance with disclosed methods andembodiments;

FIG. 8 depicts an illustrative flowchart of identifying jump pointsbased on requested rate of change, in accordance with disclosed methodsand embodiments;

FIG. 9 illustrates an example scene metadata including frameinformation, in accordance with disclosed methods and embodiments;

FIG. 10 illustrates another example scene metadata including genreinformation, in accordance with disclosed methods and embodiments; and

FIG. 11 is a block diagram representing devices, components of eachdevice, and data flow therebetween for a media content skip operationsystem incorporating skip operation features, in accordance with someembodiments of the disclosure.

DETAILED DESCRIPTION

FIG. 1 illustrates an example media content skip operation screendisplay, in accordance with disclosed methods and systems. In FIG. 1, amedia content skip operation screen display is configured as a mediacontent skip operation screen display 102. A progress bar 104 indicatesa plurality of play positions 106 including current play position 106-1.The user may wish to skip to a desired portion of the media content. Forexample, the user, while using a touchscreen device such as a tablet,may tap on the skip forward operation button 105. In response, aplurality of jump points 106-2-4 in the media asset are identified(collectively 106). In conventional systems, a skip-forwarding operationresults in cycling through the content at a uniform rate (e.g., 4-minuteduration). This results in fast-forwarding (or rewinding) past thedesired portions of the content, thereby requiring multipleskip-operations.

To address the above-noted concerns, the present disclosure identifies anumber of jump points indicative of potential time points within themedia asset from which the user may wish to resume consuming the mediaasset. A first jump point (for example, jump points 106-2 and 106-4) isidentified based on a content viewing profile. For instance, the systemretrieves the content viewing profile associated with a user making theskip forwarding request and determine one or more user preferences basedon the retrieved content viewing profile. In an embodiment, the systemmay consider the viewing preferences of all members of a household whendetermining the one or more user preferences. Continuing with the Gameof Thrones example, if the user always skips past the scenes featuringthe character Jon Snow and resumes consuming the episode when thelocation moves to Kings Landing, a jump point is identified at the playposition where the episode begins featuring Kings Landing. In accordancewith disclosed methods and embodiments, the system identifies jump point106-3 based on the determined one or more user preferences for scenesfeaturing Kings Landing. In some embodiments, the disclosed methods maydetermine user preferences for characters (e.g., Jon Snow, CerseiLannister, etc.), locations (e.g., the Wall, Winterfell, Dome, KingsLanding, etc.), or genre (e.g., violence, nudity, etc.) when determiningpotential jump points.

In some embodiments, the media asset (an episode of Game of Thrones) isa part of a series of media assets (the series Game of Thrones). Thedisclosed methods and embodiments retrieve the content viewing profileassociated with other media assets of the series of media assets whendetermining potential jump points.

A second jump point (for example, jump point 106-3) is identified basedon a scene information associated with the media asset. For example, thedisclosed methods and embodiments involve retrieving scene metadataassociated with a scene being displayed at a first time point when therequest to skip the portion of the media asset being generated fordisplay is received. For example, scene metadata at the play position106-1 is retrieved (additional details regarding scene metadata isdiscussed below in connection with FIGS. 9 and 10). Based on theretrieved scene metadata, the second time point when the scene isscheduled to end is determined (for example, time point 106-3) and thesecond jump point is displayed at the determined second time point. Inaccordance with some embodiments, the end of the scene may be determinedbased on a change in characters, locations, or genre. In accordance withan embodiment, the second jump point 106-3 precedes the determinedsecond time point (corresponding to the end position of the scene) toprovide the user some context for the upcoming scene.

Once the jump points 106 are identified, they are displayed on progressbar 104. In accordance with some embodiments, a respective preview imageassociated with each of the identified jump point is generated fordisplay. For example, respective preview images 108-1, 108-2, and 110are displayed next to identified jump points 106-2, 106-3, and 106-4respectively on progress bar 104.

In accordance with some embodiments, the first jump point is visuallydistinguished from the second jump point on the progress bar. Forexample, preview image 110 (associated with the second jump point) issurrounded by a white highlight while preview images 108-1 and 108-2(associated with the first jump points) are not. In some embodiments, arespective preview video clip associated with each of the identifiedjump point is generated instead of merely an image.

Disclosed systems and methods further include, when generating therespective preview image associated with each of the identified jumppoint, selecting a frame of the media asset corresponding to theidentified jump point and displaying the selected frame as the previewimage. For example, the system identifies the frame corresponding toplay positions 106-2, 106-3, and 106-4 and displays the identified frameas the preview image.

FIGS. 2A and 2B illustrate another example media content skip operationscreen display, in accordance with disclosed methods and systems.Specifically, FIG. 2A illustrates an example media content skipoperation screen display where the requested rate of change is low whileFIG. 2B illustrates an example media content skip operation screendisplay where the requested rate of change is high.

In FIG. 2A, a media content skip operation screen display is configuredas a media content skip operation screen display 202. A progress bar 204indicates a current play position 206-1. The user may wish to skip to adesired portion of the media content. For example, the user, while usinga touchscreen device such as a tablet, may tap on the skip forwardoperation button 203 at a first rate (e.g., 30-second skip forwardoperation). In response, a plurality of jump points 208-1, 208-2, etc.are identified in the media asset (collectively 208). As illustrated inFIG. 2A, because the requested rate of change associated with the skipforward request is low (e.g., 30-second skip forward operation), jumppoints 208 are identified in the immediate vicinity of the current playposition 206 because it is assumed that the user wants to skip smallerchunks of the media asset based on the requested lower rate.

In another embodiment illustrated in FIG. 2B, the user, while using atouchscreen device such as a tablet, may tap on the skip forwardoperation button 203 at a high rate (e.g., 4-minute skip forwardoperation). In response, a plurality of jump points 212-1, 212-2, etc.are identified in the media asset (collectively 212) towards the end ofthe media asset duration. As illustrated in FIG. 2B, because therequested rate of change associated with the skip forward request ishigh (e.g., 4-minute skip forward operation), jump points 212 areidentified in the latter portion of the media asset duration because itis assumed that the user wants to skip larger chunks of the media assetbased on the requested higher rate.

Once the jump points 208, 212 are identified, they are displayed onprogress bar 204. In accordance with some embodiments, a respectivepreview image associated with each of the identified jump point isgenerated for display. For example, preview images 210-1, 210-2, and210-3 are displayed next to identified jump points 208-1, 208-2, and208-3 respectively on progress bar 204 in FIG. 2A, while preview images214-1, 214-2, and 214-3 are displayed next to identified jump points212-1, 212-2, and 212-3 respectively on progress bar 204 in FIG. 2B. Insome embodiments, a respective preview video clip associated with eachof the identified jump point is generated instead of merely an image.

Disclosed systems and methods further include, when generating therespective preview image associated with each of the identified jumppoint, selecting a frame of the media asset corresponding to theidentified jump point and displaying the selected frame as the previewimage. For example, the system identifies the frame corresponding toplay positions 212-1, 212-2, and 212-3 and displays the identified frameas the preview image 214-1, 214-2, and 214-3 respectively.

FIG. 3 illustrates another example media content skip operation screendisplay, in accordance with disclosed methods and systems. In FIG. 3, amedia content skip operation screen display is configured as a mediacontent skip operation screen display 302. A progress bar 304 indicatesa current play position 306. The user may wish to skip to a desiredportion of the media content at a first rate. For example, the user,while using a touchscreen device such as a tablet, may tap on the skipforward operation button 303 corresponding to a 4-minute skip forwardoperation. Based on the requested rate, the system determines aplurality of uniformly spaced time points 308 (for example, spaced 4minutes apart).

In addition, the system identifies a plurality of jump points 310 basedon a content viewing profile. For example, if the user always skips toscene featuring the location Winterfell in previous episodes of Game ofThrones, the system identifies jump points 310-1 and 310-2 based on theuser's content viewing profile. Of note, jump points 310-1 and 310-2 arenot positioned at the standard 4-minute intervals. Jump points 310-1 and310-2 may be identified based on content viewing profile and/or scenecharacteristics. For instance, jump point 310-1 may be identified basedon content viewing behavior of the user when viewing previous episodesof Game of Thrones (for example, the user always skips scenes featuringthe location Dome). Additionally, jump point 310-2 may be identifiedbased on scene characteristics (for example, the scene may end at anon-uniform (i.e., at a time interval that doesn't fall at 4-minuteinterval from the current play position).

When the skipping operation is performed, the process begins by skippingalong the uniformly spaced time points 308 at 4-minute intervals. Whenan identified jump point (for example, 310-1) falls in between two ofthe determined time points, the skipping operation is paused. In someembodiments, a preview image and/or video is displayed for the user. Insome embodiments, the skipping operation may be paused for a duration ofapproximately 2 seconds. This allows the user to review the preview clipand make a selection. The user may decide to resume consuming the mediaasset or continue the skipping operation along the determined timepoints.

As discussed above, conventionally, a skip operation allows for jumpingforward or backward at a uniform rate (e.g., 4-minute duration).However, a desired scene may begin at a location that does notcorrespond to the uniform rate (e.g., at a location 15 minutes away). Insuch instances, the user is forced to skip backward after performing askip-forward operation. In contrast, the disclosed systems and methodsidentify jump points and display corresponding preview images at allpotential desired location. In this way, the user can more efficientlyreach the desired portion of the media asset without having to performmultiple skip backward and forward operations.

FIG. 4 depicts an illustrative flowchart of a jump point identificationprocess, in accordance with disclosed methods and embodiments. It shouldbe noted that process 400 or any step thereof could be performed on, orprovided by, any of the devices shown in FIG. 11 and can incorporatevarious user interfaces (e.g., displays screens of FIGS. 1-3). Forexample, process 400 may be executed by control circuitry 1128 (FIG. 11)of the user equipment 1118 and/or control circuitry of the media contentitem server 1102, as instructed by an application which may beimplemented on media content item server 1102. In addition, one or moresteps of process 400 may be incorporated into or combined with one ormore steps of any other process or embodiment (e.g., process 500 of FIG.5, process 600 of FIG. 6, process 700 of FIG. 7, process 800 of FIG. 8).

At 402, a request is received from a user to skip a portion of a mediaasset being generated for display. For example, a user decides to skip aportion of an episode of Game of Thrones. At 404, the system retrieves acontent viewing profile associated with the user (and/or members of thehousehold). At 406, the system determines a first jump point based onthe retrieved content viewing profile of the user. For example, thesystem determines that the user has always skipped past scenes featuringa lot of violence and been highly engaged with scenes featuring a lot ofmystery. Accordingly, a first jump point is determined to be at aportion of the media asset having scenes featuring a lot of mystery.

At 408, the system retrieves scene information for the scenecorresponding to the current play position. At 410, the systemdetermines a second jump point based on the retrieved scene information.For example, the system determines that the scene corresponding to thecurrent play position features the location Winterfell and determinesthat the second jump point is at the scene featuring Kings Landing. At412, the system generates for display a progress bar which indicates thefirst and second jump points. As shown in FIG. 1, progress bar 104 showsidentified jump points 106. At 414, the system generates for arespective preview image to be displayed at the identified jump points.For example, as shown in FIG. 1, preview images 108 are displayed at theidentified jump points 106, thereby allowing the user to easily navigateto a desired portion of the media asset.

FIG. 5 depicts another illustrative flowchart 500 of a jump pointidentification process, in accordance with disclosed methods andembodiments. It should be noted that process 500 or any step thereofcould be performed on, or provided by, any of the devices shown in FIG.11 and can incorporate various user interfaces (e.g., displays screensof FIGS. 1-3). For example, process 500 may be executed by controlcircuitry 1128 (FIG. 11) of the user equipment 1118 and/or controlcircuitry of the media content item server 1102, as instructed by anapplication which may be implemented on media content item server 1102.In addition, one or more steps of process 500 may be incorporated intoor combined with one or more steps of any other process or embodiment(e.g., process 400 of FIG. 4, process 600 of FIG. 6, process 700 of FIG.7, process 800 of FIG. 8).

At 502, a request is received from a user to skip a portion of a mediaasset being generated for display. For example, a user decides to skip aportion of an episode of Game of Thrones. At 504, the system retrieves arate of change associated with the received request. At 506, the systemdetermines a desired portion of the media asset based on the requestedrate of change. For example, the system determines that the user hasrequested a 30-second minute skip forward operation and determines thatthe desired portion of the media asset is in the immediate vicinity ofthe current play position. If, for instance, the system determines thatthe user has requested a 5-minute minute skip forward operation anddetermines that the desired portion of the media asset is in towards theend of the media duration.

At 508, the system retrieves scene information for the scenecorresponding to the current play position. At 510, the systemdetermines a desired portion of the media asset based on the retrievedscene information. For example, the system determines that the scenecorresponding to the current play position features the locationWinterfell and determines that the desired portion of the media assetbegins from a scene featuring Kings Landing. At 512, the processproceeds to identifying a plurality of jump points within the identifieddesired portion of the media asset. For example, as shown in FIGS. 2Aand 2B, the identified jump points 208 are identified based on therequested rate of change and/or the scene information.

At 514, the system generates for display a progress bar which indicatesthe plurality of jump points. As shown in FIGS. 2A and 2B, progress bar204 shows identified jump points 208-1-208-3. At 516, the systemgenerates for a respective preview image to be displayed at theidentified jump points. For example, as shown in FIGS. 2A and 2B,preview images 210-1-210-3 are displayed at the identified jump points208-1-208-3.

FIG. 6 depicts an illustrative flowchart 600 for navigating to a desiredplay position, in accordance with disclosed methods and embodiments. Itshould be noted that process 600 or any step thereof could be performedon, or provided by, any of the devices shown in FIG. 11 and canincorporate various user interfaces (e.g., displays screens of FIGS.1-3). For example, process 600 may be executed by control circuitry 1128(FIG. 11) of the user equipment 1118 and/or control circuitry of themedia content item server 1102, as instructed by an application whichmay be implemented on media content item server 1102. In addition, oneor more steps of process 600 may be incorporated into or combined withone or more steps of any other process or embodiment (e.g., process 400of FIG. 4, process 500 of FIG. 5, process 700 of FIG. 7, process 800 ofFIG. 8).

At 602, a request is received from a user to skip a portion of a mediaasset being generated for display at a first rate. For example, a userdecides to skip a portion of an episode of Game of Thrones at a standard2-minute skip forward rate. At 604, the system determines a series oftime points having a uniform temporal spacing based on the requestedfirst rate. For example, as illustrated in FIG. 3, a series of uniformlyspaced jump points 308 are identified at 2-minute increments.

At 606, the disclosed methods and systems identify a plurality of jumppoints in the media asset based on a content viewing profile. Forexample, as discussed above in connection with FIGS. 1 and 3, aplurality of jump points 310 are identified based on the user's highlevel of interest in scenes featuring the location Winterfell whilewatching previous episodes of Game of Thrones. At 608, the systemproceeds by performing a skipping operation on the media asset at therequested first rate by skipping along the series of determined timepoints having the uniform temporal spacing.

At 610, the system determines whether a jump point falls in between twoof the series of determined time points having the uniform temporalspacing. When one of the identified jump points (for example, 310-1 inFIG. 3) falls in between two of the time points having uniform spacing(for example, between 308-2 and 308-3) (YES at 610), the processproceeds to 612 and the skipping operation is paused at the identifiedjump point. If, on the other hand, if there are no identified jumppoints falling in between two of the series of determined time points(NO at 608), the system continues performing a skipping operation on themedia asset at the requested first rate by skipping along the series ofdetermined time points having the uniform temporal spacing

FIG. 7 depicts an illustrative flowchart 700 for identifying jump pointsbased on scene information, in accordance with disclosed methods andembodiments. It should be noted that process 700 or any step thereofcould be performed on, or provided by, any of the devices shown in FIG.11 and can incorporate various user interfaces (e.g., displays screensof FIGS. 1-3). For example, process 700 may be executed by controlcircuitry 1128 (FIG. 11) of the user equipment 1118 and/or controlcircuitry of the media content item server 1102, as instructed by anapplication which may be implemented on media content item server 1102.In addition, one or more steps of process 700 may be incorporated intoor combined with one or more steps of any other process or embodiment(e.g., process 400 of FIG. 4, process 500 of FIG. 5, process 600 of FIG.6, process 800 of FIG. 8).

At 702, metadata associated with the media asset being displayed isretrieved. As will be discussed below in greater detail in connectionwith FIGS. 9 and 10, metadata may include, for instance, informationrelated to number of frames for each scene of the media asset, genreinformation for each scene of the media asset, list of charactersappearing in each scene, and/or location information for each scene. Aperson skilled in the art will understand that any number of scenerelated information may be stored as part of the scene metadata.

At 704, it is determined whether the media asset is part of a series.For example, if the user is viewing an episode of Game of Thrones, thesystem identifies whether the episode is part of a series (in this case,the series “Game of Thrones”). If it is determined that the media assetis not part of a series (NO at 704), the process moves to 714, andmetadata for the scene corresponding to the current play position isretrieved. At 716, an end time of the scene is determined based on theretrieved metadata. For instance, the system calculates the end time ofa scene based on the current play position and a number of framescomprising the scene (determined based on the retrieved metadata). At718, a preview image is generated based on the end time of the scene.Specifically, a frame corresponding to the start position of the nextscene may be displayed as the preview image.

If, on the other hand, it is determined that the media asset is indeedpart of a series (YES at 704), the process moves to 706 where thecontent viewing profile associated with other media assets in the seriesis retrieved. For example, the system may retrieve the viewing behaviorof the user while they viewed previous episodes of the series Game ofThrones. In an embodiment, the system may retrieve the viewing behaviorof all members of a household using the user equipment on which themedia asset is being displayed. Once the content viewing profile isretrieved, the process moves to 708 and portions of the other mediaasset in the series that were previously skipped over are identified.For instance, the system identifies portions of episodes in earlierseasons of Game of Thrones that the user had skipped during priorshowings.

At 710, common characteristics among the previously skipped portions inthe other media assets of the series are identified. For instance, thesystem, by analyzing the previously skipped portions within the priorepisodes of Game of Thrones, may determine that scenes featuring a lotof violence are always skipped. Accordingly, at 712, the system mayidentify a jump point based on the identified common characteristics(which are in turn determined based on the previously skipped portionsin other media assets of the series). Continuing with the Game ofThrones example, when a user presses the “skip-forward” option, thesystem may identify jump points (potential time points in the currentepisode of Game of Thrones from which the user may wish to resumeconsumption of the media asset) beginning from scenes which do notfeature any violence.

In this manner, the system improves its ability to recommend potentialtime points from which the user may wish to resume consumption of themedia asset in response to a skip operation request. Recommending jumppoints based on content viewing profile and/or scene metadata alsoincreases the likelihood that the user will be able to resume consumingthe media asset from a desired play position without having to performmultiple skip-forward and skip-backward operations to reach the desiredplay position.

FIG. 8 depicts an illustrative flowchart 800 for identifying jump pointsbased on requested rate of change, in accordance with disclosed methodsand embodiments. It should be noted that process 800 or any step thereofcould be performed on, or provided by, any of the devices shown in FIG.11 and can incorporate various user interfaces (e.g., displays screensof FIGS. 1-3). For example, process 800 may be executed by controlcircuitry 1128 (FIG. 11) of the user equipment 1118 and/or controlcircuitry of the media content item server 1102, as instructed by anapplication which may be implemented on media content item server 1102.In addition, one or more steps of process 800 may be incorporated intoor combined with one or more steps of any other process or embodiment(e.g., process 400 of FIG. 4, process 500 of FIG. 5, process 600 of FIG.6, process 700 of FIG. 7).

Step 802, the disclosed systems and methods determine the rate of changeassociated with the request to skip portions of the media asset. Forexample, the system may determine whether the user selected the 4-minuteskip forward operation or the 30-second skip forward operation. At 804,the system determines whether the requested rate of change is high. Inaccordance with some embodiments, the system compares the requested rateof change to a predetermined threshold to determine whether therequested rate of change is high.

If the system determines that the requested rate of change is high (YESat 804), the process proceeds to 806. At 806, the process identifiesjump points beginning at a time point closer to the end of the mediaasset. For example, as illustrated in FIG. 2B, when the requested rateof change is high (e.g., 4-minute skip forward operation), the systemidentifies jump points beginning at time point 208-1. If, on the otherhand, the system determines that the requested rate of change is high(NO at 804), the process proceeds to 808. At 808, the process identifiesjump points beginning at a time point closer to the current playposition. For example, as illustrated in FIG. 2A, when the requestedrate of change is low (e.g., 30-second skip forward operation), thesystem identifies jump points beginning at time point 208-1 close to thecurrent play position 206.

FIGS. 9 and 10 illustrate example scene metadata including frameinformation, in accordance with disclosed methods and embodiments. Asshown in FIG. 9, each scene 908-1-908-N includes respective metadatainformation. The scene metadata information includes information such asnumber of frames within a particular scene along with genre informationassociated with the respective scene. For example, scene metadata 908-1indicates that the corresponding scene has 10 frames and is an Actionsequence which scene metadata 908-5 includes only 5 frames and is aComedy sequence. A person skilled in the art will understand that theabove embodiments are merely intended to be examples, and that anynumber of relevant information may be stored with scene metadata 908.

In another embodiment shown in FIG. 10, each scene 1008-1-1008-Nincludes location information along with genre information associatedwith the respective scene. For example, scene metadata 1008-1 indicatesthat the corresponding scene is based in Winterfell and is an Actionsequence which scene metadata 1008-5 is based in Dome and is a Comedysequence. A person skilled in the art will understand that the aboveembodiments are merely intended to be examples, and that any number ofrelevant information may be stored with scene metadata 1008.

FIG. 11 is an illustrative block diagram showing a media content skipoperation system incorporating skip operation features, in accordancewith some embodiments of the disclosure. In FIG. 11, a media contentskip operation system is configured as a media content skip operationsystem 1100, in accordance with some embodiments of the disclosure. Inan embodiment, one or more parts of or the entirety of system 1100 maybe configured as a system implementing various features, processes, andcomponents of FIGS. 1-10. Although FIG. 11 shows a certain number ofcomponents, in various examples, system 1100 may include fewer than theillustrated number of components and/or multiples of one or more of theillustrated number of components.

System 1100 is shown to include a computing device 1118, a server 1102and a communication network 1114. It is understood that while a singleinstance of a component may be shown and described relative to FIG. 11,additional instances of the component may be employed. For example,server 1102 may include, or may be incorporated in, more than oneserver. Similarly, communication network 1114 may include, or may beincorporated in, more than one communication network. Server 1102 isshown communicatively coupled to computing device 1118 throughcommunication network 1114. While not shown in FIG. 11, server 1102 maybe directly communicatively coupled to computing device 1118, forexample, in a system absent or bypassing communication network 1114.

Communication network 1114 may comprise one or more network systems,such as, without limitation, an Internet, LAN, WIFI or other networksystems suitable for audio processing applications. In some embodiments,system 1100 excludes server 1102, and functionality that would otherwisebe implemented by server 1102 is instead implemented by other componentsof system 1100, such as one or more components of communication network1114. In still other embodiments, server 1102 works in conjunction withone or more components of communication network 1114 to implementcertain functionality described herein in a distributed or cooperativemanner. Similarly, in some embodiments, system 1100 excludes computingdevice 1118, and functionality that would otherwise be implemented bycomputing device 1118 is instead implemented by other components ofsystem 1100, such as one or more components of communication network1114 or server 1102 or a combination. In still other embodiments,computing device 1118 works in conjunction with one or more componentsof communication network 1114 or server 1102 to implement certainfunctionality described herein in a distributed or cooperative manner.

Computing device 1118 includes control circuitry 1128, display 1134 andinput circuitry 1116. Control circuitry 1128 in turn includestransceiver circuitry 1162, storage 1138 and processing circuitry 1140.In some embodiments, computing device 1118 or control circuitry 1128 maybe configured as media devices 102, 202, or 302 of FIGS. 1, 2, and 3,respectively.

Server 1102 includes control circuitry 1120 and storage 1124. Each ofstorages 1124 and 1138 may be an electronic storage device. As referredto herein, the phrase “electronic storage device” or “storage device”should be understood to mean any device for storing electronic data,computer software, or firmware, such as random-access memory, read-onlymemory, hard drives, optical drives, digital video disc (DVD) recorders,compact disc (CD) recorders, BLU-RAY disc (BD) recorders, BLU-RAY 3Ddisc recorders, digital video recorders (DVRs, sometimes called personalvideo recorders, or PVRs), solid state devices, quantum storage devices,gaming consoles, gaming media, or any other suitable fixed or removablestorage devices, and/or any combination of the same. Each storage 1124,1138 may be used to store various types of content, metadata, and orother types of data. Non-volatile memory may also be used (e.g., tolaunch a boot-up routine and other instructions). Cloud-based storagemay be used to supplement storages 1124, 1138 or instead of storages1124, 1138. In some embodiments, retrieved content viewing profileand/or scene metadata may be stored in one or more of storages 1112,1138.

In some embodiments, control circuitry 1120 and/or 1128 executesinstructions for an application stored in memory (e.g., storage 1124and/or storage 1138). Specifically, control circuitry 1120 and/or 1128may be instructed by the application to perform the functions discussedherein. In some implementations, any action performed by controlcircuitry 1120 and/or 1128 may be based on instructions received fromthe application. For example, the application may be implemented assoftware or a set of executable instructions that may be stored instorage 1124 and/or 1138 and executed by control circuitry 1120 and/or1128. In some embodiments, the application may be a client/serverapplication where only a client application resides on computing device1118, and a server application resides on server 1102.

The application may be implemented using any suitable architecture. Forexample, it may be a stand-alone application wholly implemented oncomputing device 1118. In such an approach, instructions for theapplication are stored locally (e.g., in storage 1138), and data for useby the application is downloaded on a periodic basis (e.g., from anout-of-band feed, from an Internet resource, or using another suitableapproach). Control circuitry 1128 may retrieve instructions for theapplication from storage 1138 and process the instructions to performthe functionality described herein. Based on the processed instructions,control circuitry 1128 may determine a type of action to perform inresponse to input received from input circuitry 1116 or fromcommunication network 1114. For example, in response to a user selectionof skip-backward or skip-forward operation, control circuitry 1128 mayperform the steps of process 400 (FIG. 4), process 500 (FIG. 5), process600 (FIG. 6), process 700 (FIG. 7), process 800 (FIG. 8) or processesrelative to various embodiments, such as the example of FIGS. 1, 2, and3.

In client/server-based embodiments, control circuitry 1128 may includecommunication circuitry suitable for communicating with an applicationserver (e.g., server 1102) or other networks or servers. Theinstructions for carrying out the functionality described herein may bestored on the application server. Communication circuitry may include acable modem, an Ethernet card, or a wireless modem for communicationwith other equipment, or any other suitable communication circuitry.Such communication may involve the Internet or any other suitablecommunication networks or paths (e.g., communication network 1114). Inanother example of a client/server-based application, control circuitry1128 runs a web browser that interprets web pages provided by a remoteserver (e.g., server 1102). For example, the remote server may store theinstructions for the application in a storage device. The remote servermay process the stored instructions using circuitry (e.g., controlcircuitry 1128) and/or generate displays. Computing device 1118 mayreceive the displays generated by the remote server and may display thecontent of the displays locally via display 1134. This way, theprocessing of the instructions is performed remotely (e.g., by server1102) while the resulting displays, such as the display windowsdescribed elsewhere herein, are provided locally on computing device1118. Computing device 1118 may receive inputs from the user via inputcircuitry 1116 and transmit those inputs to the remote server forprocessing and generating the corresponding displays. Alternatively,computing device 1118 may receive inputs from the user via inputcircuitry 1116 and process and display the received inputs locally, bycontrol circuitry 1128 and display 1134, respectively.

Server 1102 and computing device 1118 may transmit and receive contentand data such as media content via communication network 1114. Forexample, server 1102 may be a media content provider, and computingdevice 1118 may be a smart television configured to download or streammedia content, such as a Harry Potter episode, from server 1102. Controlcircuitry 1120, 1128 may send and receive commands, requests, and othersuitable data through communication network 1114 using transceivercircuitry 1160, 1162, respectively. Control circuitry 1120, 1128 maycommunicate directly with each other using transceiver circuits 1160,1162, respectively, avoiding communication network 1114.

It is understood that computing device 1118 is not limited to theembodiments and methods shown and described herein. In nonlimitingexamples, computing device 1118 may be a television, a Smart TV, aset-top box, an integrated receiver decoder (IRD) for handling satellitetelevision, a digital storage device, a digital media receiver (DMR), adigital media adapter (DMA), a streaming media device, a DVD player, aDVD recorder, a connected DVD, a local media server, a BLU-RAY player, aBLU-RAY recorder, a personal computer (PC), a laptop computer, a tabletcomputer, a WebTV box, a personal computer television (PC/TV), a PCmedia server, a PC media center, a handheld computer, a stationarytelephone, a personal digital assistant (PDA), a mobile telephone, aportable video player, a portable music player, a portable gamingmachine, a smartphone, or any other device, computing equipment, orwireless device, and/or combination of the same capable of suitablydisplaying and manipulating media content.

Control circuitry 1120 and/or 1118 may be based on any suitableprocessing circuitry such as processing circuitry 1126 and/or 1140,respectively. As referred to herein, processing circuitry should beunderstood to mean circuitry based on one or more microprocessors,microcontrollers, digital signal processors, programmable logic devices,field-programmable gate arrays (FPGAs), application-specific integratedcircuits (ASICs), etc., and may include a multi-core processor (e.g.,dual-core, quad-core, hexa-core, or any suitable number of cores). Insome embodiments, processing circuitry may be distributed acrossmultiple separate processors, for example, multiple of the same type ofprocessors (e.g., two Intel Core i9 processors) or multiple differentprocessors (e.g., an Intel Core i7 processor and an Intel Core i9processor). In some embodiments, control circuitry 1120 and/or controlcircuitry 1118 are configured to implement a media content operationsystem, such as systems, or parts thereof, that perform various mediacontent manipulation processes described and shown in connection withFIGS. 4-8 and/or systems carrying out the features described and shownrelative to FIGS. 1-3.

Computing device 1118 receives a user input 1104 at input circuitry1116. For example, computing device 1118 may receive a user input like auser swipe or user touch, as previously discussed. In some embodiments,computing device 1118 is a media device (or player) configured as mediadevices 102, 202, or 302, with the capability to access media content.It is understood that computing device 1118 is not limited to theembodiments and methods shown and described herein. In nonlimitingexamples, computing device 1118 may be a television, a Smart TV, aset-top box, an integrated receiver decoder (IRD) for handling satellitetelevision, a digital storage device, a digital media receiver (DMR), adigital media adapter (DMA), a streaming media device, a DVD player, aDVD recorder, a connected DVD, a local media server, a BLU-RAY player, aBLU-RAY recorder, a personal computer (PC), a laptop computer, a tabletcomputer, a WebTV box, a personal computer television (PC/TV), a PCmedia server, a PC media center, a handheld computer, a stationarytelephone, a personal digital assistant (PDA), a mobile telephone, aportable video player, a portable music player, a portable gamingmachine, a smartphone, or any other television equipment, computingequipment, or wireless device, and/or combination of the same.

User input 1104 may be received from a user selection-capturinginterface that is separate from device 1118, such as a remote controldevice, trackpad or any other suitable user movement sensitive orcapture devices, or as part of device 1118, such as a touchscreen ofdisplay 1134. Transmission of user input 1104 to computing device 1118may be accomplished using a wired connection, such as an audio cable,USB cable, ethernet cable or the like attached to a corresponding inputport at a local device, or may be accomplished using a wirelessconnection, such as Bluetooth, WIFI, WiMAX, GSM, UTMS, CDMA, TDMA, 3G,4G, 4G LTE, or any other suitable wireless transmission protocol. Inputcircuitry 1116 may comprise a physical input port such as a 3.5 mm audiojack, RCA audio jack, USB port, ethernet port, or any other suitableconnection for receiving audio over a wired connection, or may comprisea wireless receiver configured to receive data via Bluetooth, WIFI,WiMAX, GSM, UTMS, CDMA, TDMA, 3G, 4G, 4G LTE, or other wirelesstransmission protocols.

Processing circuitry 1140 may receive input 1104 from input circuit1116. Processing circuitry 1140 may convert or translate the receiveduser input 1104 that may be in the form of gestures or movement todigital signals. In some embodiments, input circuit 1116 performs thetranslation to digital signals. In some embodiments, processingcircuitry 1140 (or processing circuitry 1126, as the case may be)carries out disclosed processes and methods. For example, processingcircuitry 1140 or processing circuitry 1126 may perform processes 400,500, 600, 700, and 800 of FIGS. 4-8, respectively.

The systems and processes discussed above are intended to beillustrative and not limiting. One skilled in the art would appreciatethat the actions of the processes discussed herein may be omitted,modified, combined, and/or rearranged, and any additional actions may beperformed without departing from the scope of the invention. Moregenerally, the above disclosure is meant to be exemplary and notlimiting. Only the claims that follow are meant to set bounds as to whatthe present disclosure includes. Furthermore, it should be noted thatthe features and limitations described in any one embodiment may beapplied to any other embodiment herein, and flowcharts or examplesrelating to one embodiment may be combined with any other embodiment ina suitable manner, done in different orders, or done in parallel. Inaddition, the systems and methods described herein may be performed inreal time. It should also be noted that the systems and/or methodsdescribed above may be applied to, or used in accordance with, othersystems and/or methods.

What is claimed is:
 1. A method comprising: receiving, via controlcircuitry, a request to skip a portion of a media asset being generatedfor display; determining, via the control circuitry, a characteristicassociated with the portion of the media asset being skipped; whereinthe characteristic associated with the portion of the media asset beingskipped is determined by: determining, via the control circuitry, a rateof change associated with the request to skip the portion of the mediaasset; and determining, via the control circuitry, a desired portion ofthe media asset based on the determined rate of change; identifying, viathe control circuitry, a plurality of jump points in the media assetbased on the identified characteristic indicative of potential timepoints from which to resume consumption of the media asset; andgenerating for display, via the control circuitry, a progress barindicating the plurality of identified jump points.
 2. The method ofclaim 1, wherein identifying the plurality of jump points in the mediaasset based on the identified characteristic comprises: identifying, viathe control circuitry, the plurality of jump points in the desiredportion of the media asset.
 3. The method of claim 2, whereinidentifying the plurality of jump points in the desired portion of themedia asset comprises: identifying a first jump point based on a contentviewing profile; and identifying a second jump point identified based ona scene information associated with the media asset.
 4. The method ofclaim 1, wherein determining the desired portion of the media assetbased on the determined rate of change comprises: determining, when thedetermined rate of change is high, that the desired portion of the mediaasset begins at a later time point of the media asset than when thedetermined rate of change is low.
 5. The method of claim 1, whereindetermining the characteristic associated with the portion of the mediaasset being skipped comprises: retrieving, via the control circuitry,scene information associated with a scene of the media asset beingdisplayed when the request to skip is received; determining, via thecontrol circuitry, an end position of the scene, wherein the scenecomprises a plurality of frames.
 6. The method of claim 5, whereinidentifying the plurality of jump points in the media asset based on theidentified characteristic comprises: identifying, via the controlcircuitry, a plurality of jump points in the portion of the media assetbeginning at a position after the end position of the scene.
 7. Themethod of claim 1, further comprising: generating, via the controlcircuitry, a respective preview image associated with each of theidentified jump points; and generating for display, via the controlcircuitry, the respective preview image associated with each of theidentified jump points on the progress bar.
 8. The method of claim 7,wherein generating the respective preview image associated with each ofthe identified jump point comprises: selecting a frame of the mediaasset corresponding to the identified jump point; and displaying theselected frame as the preview image.
 9. A system comprising: an inputcircuit configured to detect a request to skip a portion of a mediaasset being generated for display; and control circuitry configured to:determine a characteristic associated with the portion of the mediaasset being skipped; wherein the control circuitry, when determining thecharacteristic associated with the portion of the media asset beingskipped, is further configured to: determine a rate of change associatedwith the request to skip the portion of the media asset and determine adesired portion of the media asset based on the determined rate ofchange; identify a plurality of jump points in the media asset based onthe identified characteristic indicative of potential time points fromwhich to resume consumption of the media asset; and generate for displaya progress bar indicating the plurality of identified jump points. 10.The system of claim 9, wherein the control circuitry, when identifyingthe plurality of jump points in the media asset based on the identifiedcharacteristic, is further configured to: identify the plurality of jumppoints in the desired portion of the media asset.
 11. The system ofclaim 10, wherein the control circuitry, when identifying the pluralityof jump points in the desired portion of the media asset, is furtherconfigured to: identify a first jump point based on a content viewingprofile; and identify a second jump point identified based on a sceneinformation associated with the media asset.
 12. The system of claim 9,wherein the control circuitry, when determining the desired portion ofthe media asset based on the determined rate of change, is furtherconfigured to: determine, when the determined rate of change is high,that the desired portion of the media asset begins at a later time pointof the media asset than when the determined rate of change is low. 13.The system of claim 9, wherein the control circuitry, when determiningthe characteristic associated with the portion of the media asset beingskipped, is further configured to: retrieve scene information associatedwith a scene of the media asset being displayed when the request to skipis received; determining, via the control circuitry, an end position ofthe scene, wherein the scene comprises a plurality of frames.
 14. Thesystem of claim 13, wherein the control circuitry, when identifying theplurality of jump points in the media asset based on the identifiedcharacteristic, is further configured to: identify a plurality of jumppoints in the portion of the media asset beginning at a position afterthe end position of the scene.
 15. The system of claim 9, wherein thecontrol circuitry is further configured to: generate a respectivepreview image associated with each of the identified jump points; andgenerate for display the respective preview image associated with eachof the identified jump points on the progress bar.
 16. The system ofclaim 15, wherein the control circuitry, when generating the respectivepreview image associated with each of the identified jump point, isfurther configured to: select a frame of the media asset correspondingto the identified jump point; and display the selected frame as thepreview image.